package com.iris.live.services.data.models;

import javax.persistence.*;
import java.math.BigDecimal;
import java.sql.Timestamp;
import java.util.Date;

/**
 * Created by DF on 11/15/2016
 */
@SuppressWarnings("JpaDataSourceORMInspection")
@Entity
@Table(name = "报价保险表", schema = "live", catalog = "")
public class 报价保险表Model {
    private Integer 保险编号;
    private BigDecimal 保险原价;
    private BigDecimal 保险折后价;
    private String 投保类型;
    private Integer 一保N年;
    private String 贷款类型;
    private Integer 交强险投保期;
    private String 交强险保险公司;
    private Integer 商业险投保期;
    private String 商业险保险公司;
    private String 交强险手续费;
    private String 商业险手续费;
    private String 交强险保单号;
    private String 商业险保单号;
    private Date 交强险开始日期;
    private Date 交强险结束日期;
    private Date 商业险开始日期;
    private Date 商业险结束日期;
    private Date 交强险预计出单日期;
    private Date 交强险出单日期;
    private Date 商业险预计出单日期;
    private Date 商业险出单日期;
    private String sc备注;
    private String 更新账号;
    private Timestamp 更新时间;
    private String isCommerTotal; // 商业险是否总价模式(1：是  0：否)
    private BigDecimal commerFirstYearTotalPrice; // 首年商业险总价

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "保险编号")
    public Integer get保险编号() {
        return 保险编号;
    }

    public void set保险编号(Integer 保险编号) {
        this.保险编号 = 保险编号;
    }

    @Basic
    @Column(name = "保险原价")
    public BigDecimal get保险原价() {
        return 保险原价;
    }

    public void set保险原价(BigDecimal 保险原价) {
        this.保险原价 = 保险原价;
    }

    @Basic
    @Column(name = "保险折后价")
    public BigDecimal get保险折后价() {
        return 保险折后价;
    }

    public void set保险折后价(BigDecimal 保险折后价) {
        this.保险折后价 = 保险折后价;
    }

    @Basic
    @Column(name = "投保类型")
    public String get投保类型() {
        return 投保类型;
    }

    public void set投保类型(String 投保类型) {
        this.投保类型 = 投保类型;
    }

    @Basic
    @Column(name = "一保N年")
    public Integer get一保N年() {
        return 一保N年;
    }

    public void set一保N年(Integer 一保N年) {
        this.一保N年 = 一保N年;
    }

    @Basic
    @Column(name = "贷款类型")
    public String get贷款类型() {
        return 贷款类型;
    }

    public void set贷款类型(String 贷款类型) {
        this.贷款类型 = 贷款类型;
    }

    @Basic
    @Column(name = "交强险投保期")
    public Integer get交强险投保期() {
        return 交强险投保期;
    }

    public void set交强险投保期(Integer 交强险投保期) {
        this.交强险投保期 = 交强险投保期;
    }

    @Basic
    @Column(name = "交强险保险公司")
    public String get交强险保险公司() {
        return 交强险保险公司;
    }

    public void set交强险保险公司(String 交强险保险公司) {
        this.交强险保险公司 = 交强险保险公司;
    }

    @Basic
    @Column(name = "商业险投保期")
    public Integer get商业险投保期() {
        return 商业险投保期;
    }

    public void set商业险投保期(Integer 商业险投保期) {
        this.商业险投保期 = 商业险投保期;
    }

    @Basic
    @Column(name = "商业险保险公司")
    public String get商业险保险公司() {
        return 商业险保险公司;
    }

    public void set商业险保险公司(String 商业险保险公司) {
        this.商业险保险公司 = 商业险保险公司;
    }

    @Basic
    @Column(name = "交强险手续费")
    public String get交强险手续费() {
        return 交强险手续费;
    }

    public void set交强险手续费(String 交强险手续费) {
        this.交强险手续费 = 交强险手续费;
    }

    @Basic
    @Column(name = "商业险手续费")
    public String get商业险手续费() {
        return 商业险手续费;
    }

    public void set商业险手续费(String 商业险手续费) {
        this.商业险手续费 = 商业险手续费;
    }

    @Basic
    @Column(name = "交强险保单号")
    public String get交强险保单号() {
        return 交强险保单号;
    }

    public void set交强险保单号(String 交强险保单号) {
        this.交强险保单号 = 交强险保单号;
    }

    @Basic
    @Column(name = "商业险保单号")
    public String get商业险保单号() {
        return 商业险保单号;
    }

    public void set商业险保单号(String 商业险保单号) {
        this.商业险保单号 = 商业险保单号;
    }

    @Basic
    @Column(name = "交强险开始日期")
    public Date get交强险开始日期() {
        return 交强险开始日期;
    }

    public void set交强险开始日期(Date 交强险开始日期) {
        this.交强险开始日期 = 交强险开始日期;
    }

    @Basic
    @Column(name = "交强险结束日期")
    public Date get交强险结束日期() {
        return 交强险结束日期;
    }

    public void set交强险结束日期(Date 交强险结束日期) {
        this.交强险结束日期 = 交强险结束日期;
    }

    @Basic
    @Column(name = "商业险开始日期")
    public Date get商业险开始日期() {
        return 商业险开始日期;
    }

    public void set商业险开始日期(Date 商业险开始日期) {
        this.商业险开始日期 = 商业险开始日期;
    }

    @Basic
    @Column(name = "商业险结束日期")
    public Date get商业险结束日期() {
        return 商业险结束日期;
    }

    public void set商业险结束日期(Date 商业险结束日期) {
        this.商业险结束日期 = 商业险结束日期;
    }

    @Basic
    @Column(name = "交强险预计出单日期")
    public Date get交强险预计出单日期() {
        return 交强险预计出单日期;
    }

    public void set交强险预计出单日期(Date 交强险预计出单日期) {
        this.交强险预计出单日期 = 交强险预计出单日期;
    }

    @Basic
    @Column(name = "交强险出单日期")
    public Date get交强险出单日期() {
        return 交强险出单日期;
    }

    public void set交强险出单日期(Date 交强险出单日期) {
        this.交强险出单日期 = 交强险出单日期;
    }

    @Basic
    @Column(name = "商业险预计出单日期")
    public Date get商业险预计出单日期() {
        return 商业险预计出单日期;
    }

    public void set商业险预计出单日期(Date 商业险预计出单日期) {
        this.商业险预计出单日期 = 商业险预计出单日期;
    }

    @Basic
    @Column(name = "商业险出单日期")
    public Date get商业险出单日期() {
        return 商业险出单日期;
    }

    public void set商业险出单日期(Date 商业险出单日期) {
        this.商业险出单日期 = 商业险出单日期;
    }

    @Basic
    @Column(name = "SC备注")
    public String getSc备注() {
        return sc备注;
    }

    public void setSc备注(String sc备注) {
        this.sc备注 = sc备注;
    }

    @Basic
    @Column(name = "更新账号")
    public String get更新账号() {
        return 更新账号;
    }

    public void set更新账号(String 更新账号) {
        this.更新账号 = 更新账号;
    }

    @Basic
    @Column(name = "更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @Basic
    @Column(name = "isCommerTotal")
    public String getIsCommerTotal() {
        return isCommerTotal;
    }

    public void setIsCommerTotal(String isCommerTotal) {
        this.isCommerTotal = isCommerTotal;
    }

    @Basic
    @Column(name = "commerFirstYearTotalPrice")
    public BigDecimal getCommerFirstYearTotalPrice() {
        return commerFirstYearTotalPrice;
    }

    public void setCommerFirstYearTotalPrice(BigDecimal commerFirstYearTotalPrice) {
        this.commerFirstYearTotalPrice = commerFirstYearTotalPrice;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        报价保险表Model that = (报价保险表Model) o;

        if (保险编号 != null ? !保险编号.equals(that.保险编号) : that.保险编号 != null) return false;
        if (保险原价 != null ? !保险原价.equals(that.保险原价) : that.保险原价 != null) return false;
        if (保险折后价 != null ? !保险折后价.equals(that.保险折后价) : that.保险折后价 != null) return false;
        if (投保类型 != null ? !投保类型.equals(that.投保类型) : that.投保类型 != null) return false;
        if (一保N年 != null ? !一保N年.equals(that.一保N年) : that.一保N年 != null) return false;
        if (贷款类型 != null ? !贷款类型.equals(that.贷款类型) : that.贷款类型 != null) return false;
        if (交强险投保期 != null ? !交强险投保期.equals(that.交强险投保期) : that.交强险投保期 != null) return false;
        if (交强险保险公司 != null ? !交强险保险公司.equals(that.交强险保险公司) : that.交强险保险公司 != null) return false;
        if (商业险投保期 != null ? !商业险投保期.equals(that.商业险投保期) : that.商业险投保期 != null) return false;
        if (商业险保险公司 != null ? !商业险保险公司.equals(that.商业险保险公司) : that.商业险保险公司 != null) return false;
        if (交强险手续费 != null ? !交强险手续费.equals(that.交强险手续费) : that.交强险手续费 != null) return false;
        if (商业险手续费 != null ? !商业险手续费.equals(that.商业险手续费) : that.商业险手续费 != null) return false;
        if (交强险保单号 != null ? !交强险保单号.equals(that.交强险保单号) : that.交强险保单号 != null) return false;
        if (商业险保单号 != null ? !商业险保单号.equals(that.商业险保单号) : that.商业险保单号 != null) return false;
        if (交强险开始日期 != null ? !交强险开始日期.equals(that.交强险开始日期) : that.交强险开始日期 != null) return false;
        if (交强险结束日期 != null ? !交强险结束日期.equals(that.交强险结束日期) : that.交强险结束日期 != null) return false;
        if (商业险开始日期 != null ? !商业险开始日期.equals(that.商业险开始日期) : that.商业险开始日期 != null) return false;
        if (商业险结束日期 != null ? !商业险结束日期.equals(that.商业险结束日期) : that.商业险结束日期 != null) return false;
        if (交强险预计出单日期 != null ? !交强险预计出单日期.equals(that.交强险预计出单日期) : that.交强险预计出单日期 != null) return false;
        if (交强险出单日期 != null ? !交强险出单日期.equals(that.交强险出单日期) : that.交强险出单日期 != null) return false;
        if (商业险预计出单日期 != null ? !商业险预计出单日期.equals(that.商业险预计出单日期) : that.商业险预计出单日期 != null) return false;
        if (商业险出单日期 != null ? !商业险出单日期.equals(that.商业险出单日期) : that.商业险出单日期 != null) return false;
        if (sc备注 != null ? !sc备注.equals(that.sc备注) : that.sc备注 != null) return false;
        if (更新账号 != null ? !更新账号.equals(that.更新账号) : that.更新账号 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 保险编号 != null ? 保险编号.hashCode() : 0;
        result = 31 * result + (保险原价 != null ? 保险原价.hashCode() : 0);
        result = 31 * result + (保险折后价 != null ? 保险折后价.hashCode() : 0);
        result = 31 * result + (投保类型 != null ? 投保类型.hashCode() : 0);
        result = 31 * result + (一保N年 != null ? 一保N年.hashCode() : 0);
        result = 31 * result + (贷款类型 != null ? 贷款类型.hashCode() : 0);
        result = 31 * result + (交强险投保期 != null ? 交强险投保期.hashCode() : 0);
        result = 31 * result + (交强险保险公司 != null ? 交强险保险公司.hashCode() : 0);
        result = 31 * result + (商业险投保期 != null ? 商业险投保期.hashCode() : 0);
        result = 31 * result + (商业险保险公司 != null ? 商业险保险公司.hashCode() : 0);
        result = 31 * result + (交强险手续费 != null ? 交强险手续费.hashCode() : 0);
        result = 31 * result + (商业险手续费 != null ? 商业险手续费.hashCode() : 0);
        result = 31 * result + (交强险保单号 != null ? 交强险保单号.hashCode() : 0);
        result = 31 * result + (商业险保单号 != null ? 商业险保单号.hashCode() : 0);
        result = 31 * result + (交强险开始日期 != null ? 交强险开始日期.hashCode() : 0);
        result = 31 * result + (交强险结束日期 != null ? 交强险结束日期.hashCode() : 0);
        result = 31 * result + (商业险开始日期 != null ? 商业险开始日期.hashCode() : 0);
        result = 31 * result + (商业险结束日期 != null ? 商业险结束日期.hashCode() : 0);
        result = 31 * result + (交强险预计出单日期 != null ? 交强险预计出单日期.hashCode() : 0);
        result = 31 * result + (交强险出单日期 != null ? 交强险出单日期.hashCode() : 0);
        result = 31 * result + (商业险预计出单日期 != null ? 商业险预计出单日期.hashCode() : 0);
        result = 31 * result + (商业险出单日期 != null ? 商业险出单日期.hashCode() : 0);
        result = 31 * result + (sc备注 != null ? sc备注.hashCode() : 0);
        result = 31 * result + (更新账号 != null ? 更新账号.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        return result;
    }
}
